<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Sterowanie.java</title>
</head>
<body bgcolor="white">
<pre><tt><font color="#000000">001:</font> <i><font color="#9A1900">// GI-Sterowanie/Sterowanie.java</font></i>
<font color="#000000">002:</font>  
<font color="#000000">003:</font> <b><font color="#000080">import</font></b> javax<font color="#990000">.</font>swing<font color="#990000">.*;</font>
<font color="#000000">004:</font> <b><font color="#000080">import</font></b> java<font color="#990000">.</font>awt<font color="#990000">.*;</font>
<font color="#000000">005:</font> <b><font color="#000080">import</font></b> java<font color="#990000">.</font>awt<font color="#990000">.</font>event<font color="#990000">.*;</font>
<font color="#000000">006:</font> 
<font color="#000000">007:</font> <b><font color="#0000FF">public</font></b> <b><font color="#0000FF">class</font></b> <font color="#009900">Sterowanie</font> <b><font color="#0000FF">extends</font></b> JFrame <font color="#FF0000">{</font>
<font color="#000000">008:</font> 
<font color="#000000">009:</font>     <b><font color="#0000FF">public</font></b> <b><font color="#0000FF">static</font></b> <font color="#009900">void</font> <b><font color="#000000">main</font></b><font color="#990000">(</font>String<font color="#990000">[]</font> args<font color="#990000">)</font> <font color="#FF0000">{</font>
<font color="#000000">010:</font>         <b><font color="#0000FF">new</font></b> <b><font color="#000000">Sterowanie</font></b><font color="#990000">();</font>
<font color="#000000">011:</font>     <font color="#FF0000">}</font>
<font color="#000000">012:</font> 
<font color="#000000">013:</font>     <b><font color="#0000FF">public</font></b> <b><font color="#000000">Sterowanie</font></b><font color="#990000">()</font> <font color="#FF0000">{</font>
<font color="#000000">014:</font> 
<font color="#000000">015:</font>         Figure  figure <font color="#990000">=</font> <b><font color="#0000FF">new</font></b> <b><font color="#000000">Figure</font></b><font color="#990000">();</font>
<font color="#000000">016:</font>         <b><font color="#000000">setDefaultCloseOperation</font></b><font color="#990000">(</font>EXIT_ON_CLOSE<font color="#990000">);</font>
<font color="#000000">017:</font>         <b><font color="#000000">setContentPane</font></b><font color="#990000">(</font>figure<font color="#990000">);</font>
<font color="#000000">018:</font>         <b><font color="#000000">pack</font></b><font color="#990000">();</font>
<font color="#000000">019:</font>         <b><font color="#000000">setVisible</font></b><font color="#990000">(</font><b><font color="#0000FF">true</font></b><font color="#990000">);</font>
<font color="#000000">020:</font>     <font color="#FF0000">}</font>
<font color="#000000">021:</font> 
<font color="#000000">022:</font> <font color="#FF0000">}</font>
<font color="#000000">023:</font> 
<font color="#000000">024:</font> <b><font color="#0000FF">class</font></b> <font color="#009900">Figure</font> <b><font color="#0000FF">extends</font></b> JPanel <font color="#FF0000">{</font>
<font color="#000000">025:</font> 
<font color="#000000">026:</font>     <b><font color="#0000FF">private</font></b> <b><font color="#0000FF">final</font></b> <font color="#009900">int</font> step <font color="#990000">=</font> <font color="#993399">4</font><font color="#990000">,</font> maxR <font color="#990000">=</font> <font color="#993399">150</font><font color="#990000">,</font> minR <font color="#990000">=</font> <font color="#993399">10</font><font color="#990000">;</font>
<font color="#000000">027:</font>     <b><font color="#0000FF">private</font></b> <font color="#009900">int</font> radius <font color="#990000">=</font> <font color="#993399">10</font><font color="#990000">,</font> xcoor <font color="#990000">=</font> <font color="#993399">10</font><font color="#990000">,</font> ycoor <font color="#990000">=</font> <font color="#993399">10</font><font color="#990000">;</font>
<font color="#000000">028:</font>     <b><font color="#0000FF">private</font></b> <font color="#009900">int</font> width<font color="#990000">,</font>height<font color="#990000">;</font>
<font color="#000000">029:</font>     <b><font color="#0000FF">private</font></b> Color kolor <font color="#990000">=</font> Color<font color="#990000">.</font>red<font color="#990000">;</font>
<font color="#000000">030:</font>     <b><font color="#0000FF">private</font></b> <font color="#009900">boolean</font> blk <font color="#990000">=</font> <b><font color="#0000FF">false</font></b><font color="#990000">,</font> cir <font color="#990000">=</font> <b><font color="#0000FF">true</font></b><font color="#990000">,</font> fil <font color="#990000">=</font> <b><font color="#0000FF">true</font></b><font color="#990000">;</font>
<font color="#000000">031:</font> 
<font color="#000000">032:</font>     <b><font color="#000000">Figure</font></b><font color="#990000">()</font> <font color="#FF0000">{</font>
<font color="#000000">033:</font>         <b><font color="#000000">setBackground</font></b><font color="#990000">(</font>Color<font color="#990000">.</font>black<font color="#990000">);</font>
<font color="#000000">034:</font>         <b><font color="#000000">setPreferredSize</font></b><font color="#990000">(</font><b><font color="#0000FF">new</font></b> <b><font color="#000000">Dimension</font></b><font color="#990000">(</font><font color="#993399">400</font><font color="#990000">,</font><font color="#993399">400</font><font color="#990000">));</font>
<font color="#000000">035:</font> 
<font color="#000000">036:</font>         <b><font color="#000000">addMouseListener</font></b><font color="#990000">(</font><b><font color="#0000FF">new</font></b> <b><font color="#000000">MouseAdapter</font></b><font color="#990000">()</font>
<font color="#000000">037:</font>         <font color="#FF0000">{</font>
<font color="#000000">038:</font>             <b><font color="#0000FF">public</font></b> <font color="#009900">void</font> <b><font color="#000000">mousePressed</font></b><font color="#990000">(</font>MouseEvent e<font color="#990000">)</font>
<font color="#000000">039:</font>             <font color="#FF0000">{</font>
<font color="#000000">040:</font>                 <b><font color="#0000FF">if</font></b> <font color="#990000">(</font> e<font color="#990000">.</font><b><font color="#000000">isMetaDown</font></b><font color="#990000">()</font> <font color="#990000">)</font> <font color="#FF0000">{</font>
<font color="#000000">041:</font>                     blk <font color="#990000">=</font> <b><font color="#0000FF">true</font></b><font color="#990000">;</font>
<font color="#000000">042:</font>                 <font color="#FF0000">}</font> <b><font color="#0000FF">else</font></b> <font color="#FF0000">{</font>
<font color="#000000">043:</font>                     xcoor  <font color="#990000">=</font> e<font color="#990000">.</font><b><font color="#000000">getX</font></b><font color="#990000">();</font>
<font color="#000000">044:</font>                     ycoor  <font color="#990000">=</font> e<font color="#990000">.</font><b><font color="#000000">getY</font></b><font color="#990000">();</font>
<font color="#000000">045:</font>                     blk <font color="#990000">=</font> <b><font color="#0000FF">false</font></b><font color="#990000">;</font>
<font color="#000000">046:</font>                 <font color="#FF0000">}</font>
<font color="#000000">047:</font>                 <b><font color="#000000">repaint</font></b><font color="#990000">();</font>
<font color="#000000">048:</font>             <font color="#FF0000">}</font>
<font color="#000000">049:</font>         <font color="#FF0000">}</font><font color="#990000">);</font>
<font color="#000000">050:</font> 
<font color="#000000">051:</font>         <b><font color="#000000">addKeyListener</font></b><font color="#990000">(</font><b><font color="#0000FF">new</font></b> <b><font color="#000000">KeyAdapter</font></b><font color="#990000">()</font>
<font color="#000000">052:</font>         <font color="#FF0000">{</font>
<font color="#000000">053:</font>             <b><font color="#0000FF">public</font></b> <font color="#009900">void</font> <b><font color="#000000">keyPressed</font></b><font color="#990000">(</font>KeyEvent e<font color="#990000">)</font>
<font color="#000000">054:</font>             <font color="#FF0000">{</font>
<font color="#000000">055:</font>                 <b><font color="#0000FF">switch</font></b> <font color="#990000">(</font> e<font color="#990000">.</font><b><font color="#000000">getKeyCode</font></b><font color="#990000">()</font> <font color="#990000">)</font> <font color="#FF0000">{</font>
<font color="#000000">056:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_UP <font color="#990000">:</font>
<font color="#000000">057:</font>                         ycoor <font color="#990000">=</font> <font color="#990000">(</font>height<font color="#990000">+</font>ycoor<font color="#990000">-</font>step<font color="#990000">)%</font>height<font color="#990000">;</font>
<font color="#000000">058:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">059:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_DOWN <font color="#990000">:</font>
<font color="#000000">060:</font>                         ycoor <font color="#990000">=</font> <font color="#990000">(</font>ycoor<font color="#990000">+</font>step<font color="#990000">)%</font>height<font color="#990000">;</font>
<font color="#000000">061:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">062:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_LEFT <font color="#990000">:</font>
<font color="#000000">063:</font>                         xcoor <font color="#990000">=</font> <font color="#990000">(</font>width<font color="#990000">+</font>xcoor<font color="#990000">-</font>step<font color="#990000">)%</font>width<font color="#990000">;</font>
<font color="#000000">064:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">065:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_RIGHT <font color="#990000">:</font>
<font color="#000000">066:</font>                         xcoor <font color="#990000">=</font> <font color="#990000">(</font>xcoor<font color="#990000">+</font>step<font color="#990000">)%</font>width<font color="#990000">;</font>
<font color="#000000">067:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">068:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_ADD <font color="#990000">:</font>
<font color="#000000">069:</font>                         radius <font color="#990000">=</font> Math<font color="#990000">.</font><b><font color="#000000">min</font></b><font color="#990000">(</font>maxR<font color="#990000">,</font>radius<font color="#990000">+</font>step<font color="#990000">);</font>
<font color="#000000">070:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">071:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_SUBTRACT <font color="#990000">:</font>
<font color="#000000">072:</font>                         radius <font color="#990000">=</font> Math<font color="#990000">.</font><b><font color="#000000">max</font></b><font color="#990000">(</font>minR<font color="#990000">,</font>radius<font color="#990000">-</font>step<font color="#990000">);</font>
<font color="#000000">073:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">074:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_ENTER <font color="#990000">:</font>
<font color="#000000">075:</font>                         cir <font color="#990000">=</font> <font color="#990000">!</font>cir<font color="#990000">;</font>
<font color="#000000">076:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">077:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_R <font color="#990000">:</font>
<font color="#000000">078:</font>                         kolor <font color="#990000">=</font> Color<font color="#990000">.</font>red<font color="#990000">;</font>
<font color="#000000">079:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">080:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_G <font color="#990000">:</font>
<font color="#000000">081:</font>                         kolor <font color="#990000">=</font> Color<font color="#990000">.</font>green<font color="#990000">;</font>
<font color="#000000">082:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">083:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_B <font color="#990000">:</font>
<font color="#000000">084:</font>                         kolor <font color="#990000">=</font> Color<font color="#990000">.</font>blue<font color="#990000">;</font>
<font color="#000000">085:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">086:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_Y <font color="#990000">:</font>
<font color="#000000">087:</font>                         kolor <font color="#990000">=</font> Color<font color="#990000">.</font>yellow<font color="#990000">;</font>
<font color="#000000">088:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">089:</font>                     <b><font color="#0000FF">case</font></b> KeyEvent<font color="#990000">.</font>VK_SPACE <font color="#990000">:</font>
<font color="#000000">090:</font>                         fil <font color="#990000">=</font> <font color="#990000">!</font>fil<font color="#990000">;</font>
<font color="#000000">091:</font>                         <b><font color="#0000FF">break</font></b><font color="#990000">;</font>
<font color="#000000">092:</font>                     <b><font color="#0000FF">default</font></b><font color="#990000">:</font>
<font color="#000000">093:</font>                         <b><font color="#0000FF">return</font></b><font color="#990000">;</font>
<font color="#000000">094:</font>                 <font color="#FF0000">}</font>
<font color="#000000">095:</font>                 <b><font color="#000000">repaint</font></b><font color="#990000">();</font>
<font color="#000000">096:</font>             <font color="#FF0000">}</font>
<font color="#000000">097:</font>         <font color="#FF0000">}</font><font color="#990000">);</font>
<font color="#000000">098:</font>     <font color="#FF0000">}</font>
<font color="#000000">099:</font> 
<font color="#000000">100:</font>     <b><font color="#0000FF">public</font></b> <font color="#009900">void</font> <b><font color="#000000">paintComponent</font></b><font color="#990000">(</font>Graphics g<font color="#990000">)</font> <font color="#FF0000">{</font>
<font color="#000000">101:</font>         <b><font color="#0000FF">super</font></b><font color="#990000">.</font><b><font color="#000000">paintComponent</font></b><font color="#990000">(</font>g<font color="#990000">);</font>
<font color="#000000">102:</font>         <b><font color="#000000">requestFocus</font></b><font color="#990000">();</font>
<font color="#000000">103:</font>         <font color="#009900">int</font> x<font color="#990000">,</font> y<font color="#990000">,</font> b<font color="#990000">;</font>
<font color="#000000">104:</font> 
<font color="#000000">105:</font>         width  <font color="#990000">=</font> <b><font color="#000000">getWidth</font></b><font color="#990000">();</font>
<font color="#000000">106:</font>         height <font color="#990000">=</font> <b><font color="#000000">getHeight</font></b><font color="#990000">();</font>
<font color="#000000">107:</font> 
<font color="#000000">108:</font>         <b><font color="#0000FF">if</font></b> <font color="#990000">(</font> <font color="#990000">!</font>blk <font color="#990000">)</font> <font color="#FF0000">{</font>
<font color="#000000">109:</font>             g<font color="#990000">.</font><b><font color="#000000">setColor</font></b><font color="#990000">(</font>kolor<font color="#990000">);</font>
<font color="#000000">110:</font>             x <font color="#990000">=</font> xcoor <font color="#990000">-</font> radius<font color="#990000">;</font>
<font color="#000000">111:</font>             y <font color="#990000">=</font> ycoor <font color="#990000">-</font> radius<font color="#990000">;</font>
<font color="#000000">112:</font>             b <font color="#990000">=</font> <font color="#993399">2</font><font color="#990000">*</font>radius<font color="#990000">;</font>
<font color="#000000">113:</font>             <b><font color="#0000FF">if</font></b> <font color="#990000">(</font> cir <font color="#990000">)</font> <font color="#FF0000">{</font>
<font color="#000000">114:</font>                 <b><font color="#0000FF">if</font></b> <font color="#990000">(</font> fil <font color="#990000">)</font> <font color="#FF0000">{</font> g<font color="#990000">.</font><b><font color="#000000">fillOval</font></b><font color="#990000">(</font>x<font color="#990000">,</font>y<font color="#990000">,</font>b<font color="#990000">,</font>  b<font color="#990000">);</font>   <font color="#FF0000">}</font>
<font color="#000000">115:</font>                 <b><font color="#0000FF">else</font></b>       <font color="#FF0000">{</font> g<font color="#990000">.</font><b><font color="#000000">drawOval</font></b><font color="#990000">(</font>x<font color="#990000">,</font>y<font color="#990000">,</font>b<font color="#990000">-</font><font color="#993399">1</font><font color="#990000">,</font>b<font color="#990000">-</font><font color="#993399">1</font><font color="#990000">);</font> <font color="#FF0000">}</font>
<font color="#000000">116:</font>             <font color="#FF0000">}</font> <b><font color="#0000FF">else</font></b> <font color="#FF0000">{</font>
<font color="#000000">117:</font>                 <b><font color="#0000FF">if</font></b> <font color="#990000">(</font> fil <font color="#990000">)</font> <font color="#FF0000">{</font> g<font color="#990000">.</font><b><font color="#000000">fillRect</font></b><font color="#990000">(</font>x<font color="#990000">,</font>y<font color="#990000">,</font>b<font color="#990000">,</font>  b  <font color="#990000">);</font> <font color="#FF0000">}</font>
<font color="#000000">118:</font>                 <b><font color="#0000FF">else</font></b>       <font color="#FF0000">{</font> g<font color="#990000">.</font><b><font color="#000000">drawRect</font></b><font color="#990000">(</font>x<font color="#990000">,</font>y<font color="#990000">,</font>b<font color="#990000">-</font><font color="#993399">1</font><font color="#990000">,</font>b<font color="#990000">-</font><font color="#993399">1</font><font color="#990000">);</font> <font color="#FF0000">}</font>
<font color="#000000">119:</font>             <font color="#FF0000">}</font>
<font color="#000000">120:</font>         <font color="#FF0000">}</font>
<font color="#000000">121:</font>     <font color="#FF0000">}</font>
<font color="#000000">122:</font> <font color="#FF0000">}</font>
<font color="#000000">123:</font> </tt></pre>
</body>
</html>
